# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Contributor: Rasmus Thomsen <oss@cogitir.dev>
# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
pkgname=gitlab-runner
pkgver=13.2.1
pkgrel=0
# first 8 chars of the git hash of the release, see
# https://gitlab.com/gitlab-org/gitlab-runner/-/tags
# PLEASE update this, since they're used to determine what version of
# https://hub.docker.com/r/gitlab/gitlab-runner-helper/tags to use
_rev=efa30e33
pkgdesc="GitLab runner for CI/CD jobs"
url="https://docs.gitlab.com/runner/"
arch="all !mips !mips64" # go is missing
license="MIT"
makedepends="go"
install="$pkgname.pre-install $pkgname.pre-upgrade"
pkgusers="gitlab-runner"
pkggroups="gitlab-runner"
options="!check chmod-clean" # Need to be run in a git repo
subpackages="$pkgname-helper $pkgname-openrc"
source="https://gitlab.com/gitlab-org/gitlab-runner/-/archive/v$pkgver/gitlab-runner-v$pkgver.tar.gz
	$pkgname.initd
	$pkgname.confd
	change-deps.patch"

builddir="$srcdir/src/gitlab.com/gitlab-org/$pkgname"

export GOPATH="$srcdir"
export CGO_ENABLED=0

prepare() {
	mkdir -p ${builddir%/*}
	mv "$srcdir"/$pkgname-v$pkgver "$builddir"/
	default_prepare
}

build() {
	local ldflags="
		-X gitlab.com/gitlab-org/$pkgname/common.NAME=$pkgname
		-X gitlab.com/gitlab-org/$pkgname/common.VERSION=$pkgver
		-X gitlab.com/gitlab-org/$pkgname/common.REVISION=$_rev
		-X gitlab.com/gitlab-org/$pkgname/common.BUILT=$(date -u +%Y-%m-%dT%H:%M:%S%z)
		-X gitlab.com/gitlab-org/$pkgname/common.BRANCH=master
		-s -w
		"
	go build -ldflags "$ldflags" -o bin/gitlab-runner
	go build -ldflags "$ldflags" -o bin/gitlab-runner-helper \
		./apps/gitlab-runner-helper
}

package() {
	install -Dm755 "$builddir"/bin/gitlab-runner \
		"$pkgdir"/usr/bin/gitlab-runner

	install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/gitlab-runner
	install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/gitlab-runner

	mkdir -p "$pkgdir"/var/lib/gitlab-runner
	chown gitlab-runner:gitlab-runner "$pkgdir"/var/lib/gitlab-runner
}

helper() {
	pkgdesc="$pkgdesc (helper)"
	install -Dm755 "$builddir"/bin/gitlab-runner-helper \
		"$subpkgdir"/usr/bin/gitlab-runner-helper
}

sha512sums="1b05209b9b17d668cb54e2a230f08ded1b897fe22490be21c132d003cdd9ae6e26a2dc0076e9dc5bf237faa90ed15725557c72a48cd5f6023d144a9e5f3da690  gitlab-runner-v13.2.1.tar.gz
2ae753efc220c46378e84831f01b289f3689af70cd7cbb0bbcc04dc17c910d65eb5105c198d5a23098e27797a7d1c695f49b244993ea4676eb9ec9cda064f44e  gitlab-runner.initd
243ed9d7575e925794213973232f95f02d5e10cfab6cd29df6a4641b9d05b342ae90678b2eea4b21ddc703596429919d037b38248046d7c5e7a480406f412445  gitlab-runner.confd
ef6d0ed90f29d94816f871a2589eaad69690141e395bae8cdf2de37ed51a8909284ec483dbab0999997b8a854e7672e8f5656b87170f8fb890f9f45071a827cb  change-deps.patch"
